
package Oberflaeche;

import java.awt.Color;

import javax.swing.JOptionPane;

import Daten.*;
import Hilfsklassen.*;


public class Hauptklasse {
	
	public static GUI gui;
	public static LoginView loginview;
	static ClientDaten clientDaten;
	static String login_name;
	static String[] messageSplit;
	static String message;
	static int i;

	
	public static void main(String[] args) {
		gui = new GUI();
		loginview = new LoginView();
		clientDaten = gui.clientDaten;
		login_name = "Eberli";
		
		
		requestLogin();
		
		// TestMethode zur Verarbeitung von Strings ohne Server
		//testStuff("1 0 Eberli 1 DPRTVZ Simon 1 DRR Batonnet 1 VZZ 1 DPP 1 T 1 0 D a1");

	}
	public static void testStuff(String message){
// 		Test-Stuff 1	
		clientDaten.spielername = "Eberli";
		messageSplit = message.split(" ");		
		clientDaten.feedString(messageSplit);
		
////		// Test-Stuff 1				
//		message = "0 0 Eberli 1 DV Simon 1 DRR Batonnet 0 VZZ 1 DPP 1 T 1 0 0 a1";
//		messageSplit = message.split(" ");		
//		clientDaten.feedString(messageSplit);
////		// Test-Stuff 2			
//		message = "highscore simon 100 eberli 1";
//		messageSplit = message.split(" ");		
//		clientDaten.feedString(messageSplit);
////		// Test-Stuff 3				
//		message = "login 0";
//		messageSplit = message.split(" ");		
//		clientDaten.feedString(messageSplit);
////		// Test-Stuff 4			
//		message = "register ali 0";
//		messageSplit = message.split(" ");		
//		clientDaten.feedString(messageSplit);
	}	
	public static void requestLogin(){
		requestLoginIP();
		requestLoginUser();
		requestLoginPW();					

	}	
	private static void requestLoginIP(){
		String con_IP = "127.0.0.1";
		con_IP = JOptionPane.showInputDialog("Bitte IP-Adresse eingeben", con_IP);
		
		// Programm bei Abbruch verlassen
		if (con_IP == null){
			System.exit(0); 
		}		
		gui.go(con_IP);
	}
	private static void requestLoginUser(){
		Object[] options = { "Einloggen", "Registrieren", "Beenden" };
		i = JOptionPane.showOptionDialog(null, "Registrieren oder Einloggen", "Warnung", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);

		// Programm bei Abbruch verlassen
		if (i == 2){
			System.exit(0); 
		}	
		
		login_name = JOptionPane.showInputDialog("Bitte Namen eingeben", login_name);
		
		// Programm bei Abbruch verlassen
		if (login_name == null){
			System.exit(0); 
		}	
		
		clientDaten.spielername = login_name;
	}
	public static void requestLoginPW(){
		String login_pw = "12345";
		login_pw = JOptionPane.showInputDialog("Bitte Passwort eingeben", login_pw); 
		
		// Programm bei Abbruch verlassen
		if (login_pw == null){
			System.exit(0); 
		}	

		switch (i){				
		case 0: gui.Funktion_Login(login_name, login_pw);
		break;		
		case 1: gui.Funktion_Registrieren(login_name, login_pw);
		break;
		}
	}
}
